$(() => {
  const { form } = layui
  // 获取到用户名字
  const userInfo = JSON.parse(localStorage.getItem('userInfo'))
  // 渲染到页面上
  //给表单赋值
  form.val("formUserInfo", userInfo);
  // 一会点击修改， 要从表单获取数据（快速获取, 要有input， input要有name属性）
  // 对昵称和邮箱做校验


  // 点击重置按钮，恢复默认数据
  $('#btnReset').on('click', function (e) {
    // 保证是最新的本地存储的数据
    const userInfo = JSON.parse(localStorage.getItem('userInfo'))
    // 阻止默认行为
    e.preventDefault();
    // 快速重置表单数据
    form.val("formUserInfo", userInfo);
  })

  form.verify({
    nickname: [
      /^[\S]{6,12}$/
      , '昵称必须6到12位，且不能出现空格']
  })

  // 点击提交按钮， 发修改用户信息的请求
  $('form').on('submit', function (e) {
    // 阻止默认行为
    e.preventDefault();
    // 快速获取表单数据
    const data = form.val("formUserInfo");
    // 发ajax
    $.ajax({
      type: "post",
      url: "/my/userinfo",
      data: data,
      success: function (res) {
        if (res.status != 0) return layer.msg('更新用户信息失败!');
        layer.msg('更新用户信息成功!');
        // 获取当前window的父级window
        // 重新渲染用户信息
        // 如果提示信息更新成功，说明本地form表单的数据和服务器的一致了，没必要重新发ajax拿数据
        // 直接拿本地数据渲染
        window.parent.render(data)

        // 把用户信息到本地存储
        localStorage.setItem('userInfo', JSON.stringify(data))
      }
    });
  })
})